package com.alibaba.otter.node.etl.load.loader.mq.rabbit.assembly;

import com.alibaba.otter.node.etl.load.loader.mq.rabbit.model.Message;
import com.alibaba.otter.node.etl.load.loader.mq.rabbit.provider.HeaderProvider;
import com.alibaba.otter.node.etl.load.loader.mq.rabbit.provider.PropertyProvider;
import com.alibaba.otter.node.etl.load.loader.mq.rabbit.serializer.Serializer;

import java.util.List;

public interface MessageAssembler {

    Message assemblyMessage(Object message);

    void setSerializer(Serializer serializer);

    void setHeaderProviders(List<HeaderProvider> headerProviders);

    void setPropertyProviders(List<PropertyProvider> propertyProviders);
}
